As is well known, in recent years, declining prices coupled with improved performance have revolutionized the marketing of small data processing systems such as personal computers and word processors. Data processing systems are no longer used almost entirely by scientists, engineers and data processing professionals but are now commonly used by businessmen, students, doctors, lawyers and other individuals who are not familiar with computer science. Such people generally are not skilled programmers and are not interested in becoming one. Rather, they want to use their data processing systems as convenient tools to solve their problems.
As a result, a vast new industry has sprung up to develop and market software for such individuals. Such software is normally marketed in the form of portable media such as floppy disks or tape cassettes. However, since such media are both portable and reusable and since the market for small data processing systems is so diffuse, unauthorized copying of software has become a major problem for the new software industry. Attempts to encode such software so that it could not be copied have generally not been successful since other software designed to decode and copy encoded software was rapidly developed and marketed.
Another problem faced by both the software industry and users has been the problem of inventory control. As available software proliferated, the problem of accounting for numerous items of portable media grew rapidly.
One approach taken by manufacturers of systems has been to provide one item of portable media, typically a floppy disk, containing the operating system and various optional programs such as application programs. ("Operating system" and "application program" are concepts which are well known in the data processing art and generally may be considered as relating to a master program which controls the overall operation of the system and particular programs which, under control of the operating system, perform particular functions to solve particular types of problems. A further description of these concepts is not believed necessary to an understanding of the present invention.) The system was then constructed to include non-volatile information (i.e. information that survives shut-down or power loss), typically in the form of read-only-memory (ROM), defining the optional programs which were available to the operating system.
A major problem with this approach to the problem is that in order to change what optional programs are available, it is necessary to manually alter the physical structure of the system to change the data in the ROM.
Thus, it is an object of the subject invention to provide an apparatus and method for distributing software which will reduce the opportunity for unauthorized copying of such software.
It is another object of the subject invention to provide such apparatus and method which will reduce the inventory control problem for the portable media on which the software is recorded.
It is still another object of the subject invention to provide such a method and apparatus wherein the available software may be easily changed by unskilled persons.